GtkEventControllerPrivate *priv;
priv = gtk_event_controller_get_instance_private (controller);
- g_assert (priv->widget != NULL);
- _gtk_widget_add_controller (priv->widget, controller);
+ if (priv->widget)
+ _gtk_widget_add_controller (priv->widget, controller);
}
static void
GtkEventControllerPrivate *priv;
priv = gtk_event_controller_get_instance_private (controller);
- _gtk_widget_remove_controller (priv->widget, controller);
+ if (priv->widget)
+ _gtk_widget_remove_controller (priv->widget, controller);
}
static void
GtkGesture *
gtk_gesture_drag_new (GtkWidget *widget)
{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
return g_object_new (GTK_TYPE_GESTURE_DRAG,
"widget", widget,
NULL);
GtkGesture *
gtk_gesture_long_press_new (GtkWidget *widget)
{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
return g_object_new (GTK_TYPE_GESTURE_LONG_PRESS,
"widget", widget,
NULL);
GtkGesture *
gtk_gesture_multi_press_new (GtkWidget *widget)
{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
return g_object_new (GTK_TYPE_GESTURE_MULTI_PRESS,
"widget", widget,
NULL);
GtkGesture *
gtk_gesture_rotate_new (GtkWidget *widget)
{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
return g_object_new (GTK_TYPE_GESTURE_ROTATE,
"widget", widget,
NULL);
GtkGesture *
gtk_gesture_swipe_new (GtkWidget *widget)
{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
return g_object_new (GTK_TYPE_GESTURE_SWIPE,
"widget", widget,
NULL);
GtkGesture *
gtk_gesture_zoom_new (GtkWidget *widget)
{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
return g_object_new (GTK_TYPE_GESTURE_ZOOM,
"widget", widget,
NULL);